#ifndef _TEST_APP
#define _TEST_APP

#include "ofMain.h"
#include "ofxVec3f.h"
#include "ofxSimpleGuiToo.h"
#include "Boid.h"
#include "lq.h"

class testApp : public ofBaseApp {

    private:
        float guiCohFact,
              guiSepFact,
              guiAlignFact,
              guiSepRadius,
              guiAffectDist,
              guiNeighborhoodAngleDeg,
              guiMaxForce,
              guiMaxSpeed;

        int guiTrailLength,
            guiNumBoids;

        void checkParameters();
        vector<Boid*> boid_list;
        void setBoidsCount(int num_boids);

        lqDB *boidLqDB;

	public:
		void setup();
		void update();
		void draw();

		void keyPressed(int key);
		void keyReleased(int key);
		void mouseMoved(int x, int y);
		void mouseDragged(int x, int y, int button);
		void mousePressed(int x, int y, int button);
		void mouseReleased(int x, int y, int button);
		void windowResized(int w, int h);
};

#endif
